Information processing apparatus and method, and program storage medium

ABSTRACT

Disclosed is an information processing apparatus including a device for measuring a position, a time generator for generating time data representing times of day at which the positions are measured, a storage for storing data constituted by the measured position measuring and by an output of the time generator, the two outputs having an associative relation established therebetween, and an outputting device for outputting the stored data from the storage to an external entity.

BACKGROUND OF THE INVENTION

The present invention relates to an information processing apparatus andmethod, and a program storage medium. More particularly, the inventionrelates to an information processing apparatus and method wherebymeasured position data and time data are acquired from satellites andstored, as well as to a program storage medium which accommodates aprogram constituting the method for use with the apparatus.

Recent years have seen the widespread acceptance of apparatuses forcapturing, storing and processing images through the use of digitaltechnology. Generally, images such as those taken by digital camera arelater arranged by date, grouped into predetermined categories orotherwise sorted out by users. Such follow-up classification of imagesrequires information about where and when the images were captured.

The need for image-classifying information is met illustratively bymethods for associating data representing images taken by digital cameraor by other means with data about where and when the image data wereacquired. One such method, proposed by Japanese Patent Laid-open No. Hei10-233985, utilizes a digital camera and a GPS (Global PositioningSystem) device to obtain (i.e., store) positions at which images werecaptured. According to this method, the GPS device is connected to thedigital camera so that position information acquired by the GPS deviceis stored in association with the image data taken by the digitalcamera.

It is possible to incorporate position data into image data byconnecting a GPS device to a digital camera as proposed by the methodabove. However, if the digital camera has no means of connecting with aGPS device, there is no way of acquiring the position data.

The present invention has been made in view of the above circumstancesand provides an information processing apparatus and method as well as aprogram storage medium allowing position and time-of-day information tobe stored into a GPS device in such a manner that the stored informationis later associated with captured image data through a personal computeror the like, whereby users may edit the image data easily.

SUMMARY OF THE INVENTION

In carrying out the invention and according to one aspect thereof, thereis provided an information processing apparatus comprising: a positionmeasuring element for measuring positions; a time generating element forgenerating time data representing times of day at which the positionsare measured by the position measuring element; a storing element forstoring data constituted by an output of the position measuring elementand by an output of the time generating element, the two outputs havingan associative relation established therebetween; and an outputtingelement for outputting the stored data from the storing element to anexternal entity.

According to another aspect of the invention, there is provided aninformation processing method comprising the steps of: measuringpositions; generating time data representing times of day at which thepositions are measured in the position measuring step; and storing dataconstituted by an output of the position measuring step and by an outputof the time generating step, the two outputs having an associativerelation established therebetween.

According to a further aspect of the invention, there is provided aninformation processing method comprising the step of: outputting, to anexternal entity, position data representing measured positions and timedata representing times of day at which the position data are obtained,the position data and the time data having been stored with anassociative relation established therebetween.

According to an even further aspect of the invention, there is provideda program storage medium which stores a program for causing aninformation processing apparatus to execute the steps of: measuringpositions; generating time data representing times of day at which thepositions are measured in the position measuring step; and storing dataconstituted by an output of the position measuring step and by an outputof the time generating step, the two outputs having an associativerelation established therebetween.

According to a still further aspect of the invention, there is provideda program storage medium which stores a program for causing aninformation processing apparatus to execute the step of: outputting, toan external entity, position data representing measured positions andtime data representing times of day at which the position data areobtained, the position data and the time data having been stored with anassociative relation established therebetween.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will be described indetail with reference to the following figures wherein:

FIG. 1 is a schematic view outlining a typical configuration of aninformation processing. system embodying the invention;

FIG. 2 is a block diagram showing an internal structure of a personalcomputer included in FIG. 1;

FIGS. 3A through 3D are schematic views sketching an appearance of a GPSdevice included in FIG. 1;

FIG. 4 is an explanatory view of the GPS device as it is attached to thepersonal computer;

FIG. 5 is an explanatory view showing a user carrying the GPS devicearound;

FIG. 6 is a block diagram depicting an internal structure of the GPSdevice;

FIG. 7 is an explanatory view of switches in the GPS device;

FIG. 8 is a flowchart of steps in which the GPS device operates;

FIG. 9 is a flowchart of steps detailing the process in step S4 of FIG.8;

FIGS. 10A, 10B and 10C are explanatory views of log data to be storedinto the GPS device;

FIG. 11 is a flowchart of steps detailing the process in step S23 ofFIG. 9;

FIG. 12 is a flowchart of steps detailing the process in step S7 of FIG.8;

FIG. 13 is a flowchart of steps detailing the process in step S9 of FIG.8;

FIG. 14 is a flowchart of steps detailing the process in step S77 ofFIG. 13;

FIG. 15 is a flowchart of steps detailing the process in step S78 ofFIG. 13;

FIG. 16 is a timing chart in effect when the GPS device is activatedcontinuously;

FIG. 17 is a timing chart in effect when the GPS device is activatedintermittently;

FIG. 18 is a timing chart showing how the GPS device works when the markbutton is operated;

FIG. 19 is a flowchart of steps performed by the GPS device connected tothe personal computer;

FIG. 20 is a flowchart of steps detailing the process in step S136 ofFIG. 19;

FIG. 21 is a flowchart of steps detailing the process in step S158 ofFIG. 20;

FIG. 22 is a flowchart of steps detailing the process in step S175 ofFIG. 21;

FIG. 23 is a schematic view of a typical screen appearing on a display19;

FIG. 24 is a schematic view of a typical screen that appears when aninterval setting field is operated;

FIG. 25 is a schematic view of a typical error message generated in caseof an error during data exchanges between the personal computer and theGPS device;

FIG. 26 is a schematic view of a data transfer indication window thatappears during data exchanges between the personal computer and the GPSdevice;

FIG. 27 is an explanatory view of a typical image file structure;

FIG. 28 is a flowchart of steps performed by the personal computer 4when specifying positions where image data were acquired;

FIG. 29 is an explanatory view of log data;

FIG. 30 is an explanatory view showing how an image capture position isillustratively estimated; and

FIG. 31 is an explanatory view of storage media for use with theinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a schematic view outlining a typical configuration of aninformation processing system embodying the invention. A GPS device 1receives signals from satellites, not shown, analyzes the receivedsignals to compute positions of reception (latitude and longitude), andstores the computed position information. Satellites usually carry anatomic clock each so that the GPS device 1 may acquire time informationfrom the signal received therefrom. The time information thus obtainedis also stored. In the description that follows, the informationcomprising position and time information stored in the GPS device 1 willbe referred to as log data. A digital camera 2 captures images ofsubjects, and stores data constituting the captured images onto astorage medium such as a floppy disk 3 (the images captured by thedigital camera 2 are hereunder assumed to be stored on the floppy disk3).

Besides the floppy disk 3, other storage media such as a portablesemiconductor memory 5 may be used to accommodate the images taken bythe digital camera 2. If the digital camera is equipped with acommunication function, the captured image data may be transmittedthrough the function to another device for storage therein.

A personal computer 4 is connected to the GPS device 1 through a USB(Universal Serial Bus) cable and is fed with log data from inside theGPS device 1. The personal computer 4 may also be connected to thedigital camera 2 through a USB cable. Thus connected, the personalcomputer 4 may read image data from the digital camera 2. It is alsopossible for the personal computer 4 to retrieve image data from thefloppy disk 3.

FIG. 2 is a block diagram showing an internal structure of the personalcomputer 4. A CPU 11 of the personal computer 4 carries out variousprocesses in accordance with programs held in a ROM (read only memory)12. A RAM (random access memory) 13 accommodates data and programs thatmay be needed by the CPU 11 during process execution. An input/outputinterface (I/O) 14 is connected with a keyboard 15 and a mouse 16,sending signals from these components to the CPU 11. The I/O interface14 is also connected with a floppy disk drive (FDD) 17 and a hard diskdrive (HDD) 18 so that data and programs are written and read theretoand therefrom. The I/O interface 14 is further connected with a display19 as well as with the GPS device 1 via a USB port 20. An internal bus21 interconnects these components.

FIGS. 3A through 3D are schematic views sketching an appearance of theGPS device 1. FIG. 3A is a front view, FIG. 3B is a back view, FIG. 3Cis a right-hand-side view, and FIG. 3D is a bottom view, of the GPSdevice 1. The GPS device 1 is made up of an antenna 31 and a body 32.The antenna 31 is attached to the body 32 in a backward swivelingmanner. The body 32 is furnished with a GPS lamp 33, a REC lamp 34 and aPOWER lamp 35, as well as a mark button 36 and a power button 37. A PChook 38 is also provided on the body 32.

The PC hook 38, used to attach the,GPS device 1 to a notebook typepersonal computer 4 (mobile computer), moves in an extendable andretractable manner with respect to the body 32. Although FIG. 3C showsthe PC hook 38 being extended (extracted) away from the body 32, the PChook 38 is usually retracted into the body 32 to avoid interference withnearby objects. Loaded with a spring (not shown), the PC hook 38retracts by itself into the body 32 when released from its manuallyextended position.

The PC hook 38, extended from the body 32 as shown in FIG. 3C, clips theGPS device 1 onto a notebook type personal computer 4. Morespecifically, with the personal computer 4 opened as depicted in FIG. 4,an edge of the display 19 is sandwiched between the extended PC hook 38and the body 32. The components attach the GPS device 1 onto thepersonal computer 4. Since the PC hook 38 is loaded with the spring asmentioned, the extended hook puts a certain amount of pressure onto thedisplay 19 against the body 32 to prevent the GPS device 1 from fallingin case of an impact or vibrations exerted on the computer 4.

When the GPS device 1 is clipped onto the personal computer as shown inFIG. 4, they may constitute a navigation system used illustratively onvehicles. The personal computer 4 is made to execute an applicationprogram that runs the navigation system. The application program inoperation causes the display 19 illustratively to indicate a mapcontaining the current position of the system. Data for displaying thecurrent position are computed using position information acquired by theGPS device 1. Where the personal computer 4 and GPS device 1 are used asthe navigation system, the antenna 31 attached pivotally to the body 32may be suitably adjusted in angle relative to the body 32 before beingfixed (i.e., at an optimal angle for receiving signals from satellites),as illustrated in FIG. 4.

The GPS device 1 may be carried around by a user. In such a case, theuser may retract the PC hook 38 into the body 32 to avoid interferencewith nearby objects. A strap may be threaded through a strap buckle 39(FIG. 3B) on the device body, and the strap may be passed around theuser's neck or hooked onto his belt for carrying purposes.Illustratively, as sketched in FIG. 5, the user may thread a long strapthrough the strap buckle 39 to hang the GPS device 1 from his neck forportable use.

As shown in FIG. 3B, the GPS device 1 has a battery lid 40 on its back.Displacing the battery lid 40 rightward as seen in FIG. 3B opens thelid. Either primary or second batteries may be used. The GPS device 1may be designed to have a function for letting secondary batteries berecharged while they are being loaded in the device 1. The GPS device 1also has a USB port 42 allowing the device 1 to exchange data with thepersonal computer 2.

FIG. 6 is a block diagram showing an internal structure of the GPSdevice 1. As mentioned above, the GPS device 1 is composed of theantenna 31 and the body 32. The body 32 includes circuits that carry outdiverse processes. FIG. 6 depicts blocks that functionally categorizethese circuits. An operation unit 51 includes the mark button 36 andpower button 37 manipulated by the user to effect desired operations. Astorage unit 52 stores log data.

A control unit 53 generates log data based on signals received throughthe antenna 31, stores the log data thus generated, and performsprocesses to address signals coming through the USB port 42 or from theoperation unit 51. A power supply unit 54 supplies the necessarycomponents of the GPS device 1 with power derived from batteries or fromthe personal computer 4 via the USB port 42. A counter unit 55 performstime management, manages various counter value's (to be describedlater), and feeds the management information to the control unit 53.

The GPS device 1 has three defined modes: GPS mode, PC mode, and storagemode. The GPS mode is selected when the GPS device 1 is connected to thepersonal computer 4 for use as a GPS signal receiving antenna of anavigation system. The PC mode is selected when the GPS device 1 outputslog data from the storage unit 52 or establishes various settings asinstructed by the personal computer 4 connected to the GPS device 1. Thestorage mode is selected illustratively for the GPS device 1 to becarried around by the user with log data held in the storage unit 52.

The storage mode is further classified into three states: wake state,sleep sate, and wake-up sate. The wake state is a state in which dataare being stored. In the sleep state, data storing operations are beinghalted. The wake-up state is a state in which the GPS device 1 is rousedtemporarily from its sleep state to perform a data storing operationbefore going back to the sleep state.

The GPS device 1 has switches built inside. These switches are operatedby the control unit 53 depending on which of the three modes above iscurrently selected. More specifically, the GPS device 1 has switches 61and 62 furnished as shown in FIG. 7. In the GPS mode, the control unit53 connects the switch 61 to a terminal A1 and the switch 62 to aterminal B1.

In the PC mode, the switch 61 is connected either to the terminal A1 orto a terminal A2 while the switch 62 is connected to a terminal B2. Inthe PC mode, the GPS device 1 operates in keeping with commands from thepersonal computer 4. If a command tells the GPS device 1 to act as a GPSinstrument (i.e., to output signals received by the antenna 31), thenthe switch 61 is connected to the terminal A1; if a command instructsthe GPS device 1 to output log data from the storage unit 52, then theswitch 61 is connected to the terminal A2. The switch 61 is forciblyconnected (as part of initialization) to the terminal A1 if the GPSdevice 1 is judged to be currently capable of communicating (data) withthe personal computer 4; otherwise the switch 61 is connected to theterminal A2.

In the storage mode, the control unit 53 connects the switch 61 to theterminal A2. Since the GPS device 1 is disconnected from the personalcomputer 4 when the storage mode is in effect, the switch 62 may beconnected either to the terminal B1 or to the terminal B2 with nooperative difference resulting from the two settings. Thus the switch 62is connected to the terminal B1 by default in the storage mode.

How the GPS device 1 works will now be described by referring to theflowchart of FIG. 8. The steps making up the flowchart of FIG. 8 areperformed when the GPS device 1 is not connected with the personalcomputer 4, i.e., when the storage mode is in effect. Neither the GPSmode nor the PC mode applies to the workings here.

In step S1 of FIG. 8, the control unit 53 checks to see if the powerbutton 37 is operated. The process of step S1 is repeated until thepower button 37 is judged to be operated (i.e., the GPS device 1maintains its status until the power button 37 is operated). If thepower button 37 is judged to be operated, step S2 is reached. In stepS2, a check is made to see if the wake state is selected.

If in step S2 the wake state is judged to be in effect, i.e., if the GPSdevice 1 is already turned on and its power button 37 is operated withlog data being stored, then step S3 is reached. In step S3, a check ismade to see if the power button 37 is being actuated longer than threeseconds. The period of three seconds is cited here merely as a typicalreference value; other duration in seconds may be adopted instead. Thereference value is established to serve as a criterion by which to pickone of several possibilities: the power button 37 may have been operatedto turn on or off the GPS device 1; the power button 37 may have beenactuated to execute a process of step S7 (to be described later); or thepower button 37 may have been activated inadvertently while the deviceis being carried around strapped illustratively to the user's belt(operational error).

If in step S3 the power button 37 is not judged to be actuated longerthan three seconds, an,operational error is recognized and no actiontakes place. If the power button 37 is judged to be actuated longer thanthree seconds in step S3, then step S4 is reached in which a power-offprocess is carried out.

FIG. 9 is a flowchart of steps detailing the power-off process in stepS4. When the power-off process is initiated, the supply of signals fromthe antenna 31 is stopped in step S21. In step S22, an end flag is setto 1. A structure of log data to be stored is explained hereunder. Onepiece of log data is formed as a 19-byte fixed-length data item, asshown in FIG. 10A. The byte size, to be discussed below, is merely anexample and may be replaced by any other suitable byte size.

Of the 19 bytes making up each log data item, one byte is assigned toflag data, 17 bytes are allocated to a log data body, and the remainingone byte is apportioned to status data. The flag data have a datastructure shown in FIG. 10B. In the single byte flag data, a start flag,an end flag, a mark flag and an O/G flag are each assigned one bit; theremaining four bits are set aside as dummies.

The start flag is set to 1 when indicating the first log data itemrecorded with the storage mode brought into effect; otherwise (i.e.,when the data item in question is the second or subsequent data itemrecorded with the storage mode in effect), the start flag is set to 0.In like manner, the end flag is set to 1 when indicating the last logdata recorded in the storage mode; otherwise the end flag is set to 0.

The mark flag is set to 1 when indicating a logo data item recorded byoperation of the mark button 36 (to be described later in detail);otherwise the mark flag is set to 0.

If the O/G flag is set to 1 while the start flag is at 0, that means thelog data item in question is not data stored in the current storage modebut the most recently stored data from the previous storage mode. If theO/G flag is set to 0 while the start flag is at 0, that means the storedlog data item is data recorded in the current storage mode. If the O/Gflag is set to 1 while the start flag is at 1 (i.e., if the flagsindicate the first log data item recorded in the current storage mode),that means the log data are those recorded from beginning to end in theTokyo geodetic system. If the O/G flag is set to 0 while the start flagis at 1, that means the log data are those stored from beginning to endin the World Geodetic System (WGS84).

The log data body is structured as shown in FIG. 10C. Of the 17 bytesconstituting the data body, 6 bytes stand for a time of day, 0.5 bytesfor latitudinal and longitudinal hemispheres, 3.5 bytes for a latitude,4 byte for a longitude, 1.5 bytes for a velocity, and 1.5 bytes for anazimuth.

The time of day is defined in terms of year, month, day, hours, minutes,and seconds based on UTC (Universal Time Coordinated). The latitudinaland longitudinal hemispheres are defined by the following data: if themost significant bit is 0, that means subsequent latitudes are in thenorth; if the MSB is 1, that means subsequent latitudes are in thesouth; if the bit next to the MSB is 0, that means subsequent longitudesare in the east; if the bit next to the MSB is 1, that means subsequentlongitudes are in the west.

The latitude is given as seven-digit numeric data and the longitude isindicated as eight-digit numeric data. The velocity is given asthree-digit numeric data in increments of one Km/h. The azimuthdesignates the direction in which the user is advancing and is definedby three-digit numeric data in increments of one degree in a clockwise360-degree range with the true north set for 0.

Returning to the flowchart of FIG. 9, the end flag in the log data isset to 1 in step S22. In step S22, a storage process is performed. FIG.11 is a flowchart of steps detailing the storage process. This processis carried out to have the above-described log data generated and placedinto the storage unit 52 (FIG. 6).

In step S32 of FIG. 11, the control unit 53 checks a writable area inthe storage unit 52. Specifically, a check is made to see if thewritable area has enough space to accommodate one log data item, i.e., a19-byte space in this example. If the writable area is judged to be lessthan 19 bytes long, step S32 is reached in which the REC lamp 34 isilluminated. The REC lamp 34 is illustratively red in color and remainslit red as long as log data cannot be stored due to a lack of thewritable area.

If in step S31 the writable area of the storage unit 52 is judged tohave sufficient space to accommodate the log data, step S33 is reached.In step S33, the above-described log data are generated and written to adesignated address in the storage unit 521. In step S34, an address isset at which to store the next log data. Specifically, the address valueis incremented by 19.

With the log data thus stored, step S35 is reached in which the REC lamp34 is lit for 0.1 second to notify the user of the data storage. In stepS36, a check is made to see if the writable area has fallen short of acaution level. If the available area in the storage unit 52 is judged tohave dropped below the caution level, a process is carried out to notifythe user thereof. The default caution level is set for 10 percent of thecapacity of the storage unit 52 (i.e., space to store log data). Thecaution level may be modified by the user in a manner to be describedlater.

The storage unit 52 may illustratively have a capacity large enough tostore log data every second for up to 7.5 hours. In that case, thecapacity of the storage unit 52 amounts to 513,000 bytes (=19 bytes×60seconds×60 minutes×7.5 hours). If the caution level is set for 10percent of the capacity, the level is then established at 51,300 bytes.

If in step S36 the writable area is judged to be less than the cautionlevel, step S37 is reached. In step S37, the REC lamp 34 keeps blinkingat intervals of 0.3 seconds, informing the user that the available areain the storage unit 52 is being exhausted. In step S38, a beep sound isemitted as a warning. Although the beep may sound in any tone, in anyvolume and in whatever melody, the sound emission should preferably becharacterized by different melodies and tones depending on the currentstatus of the GPS device 1 so that the user immediately recognizes whatis happening upon hearing the sound. Illustratively, a continuous beepemission “bleep, bleep, bleep, . . . ” may be used to warn that thecapacity of the storage unit 52 is getting exhausted.

Suppose that the user is given such a warning of a shortage in thewritable area of the storage unit 52 and still fails to take action suchas one to end the storage operation or to erase unnecessary log data,thus continuously storing log data and eventually letting the writablecapacity of the storage unit 52 be totally exhausted. In that case, theGPS device 1 is switched off, and the stored log data are held intactunless otherwise specified by the user. There is no possibility of anystored log data forcibly or inadvertently erased or made unavailable tothe user at a later date.

If in step S36 the writable area is judged to be higher than the cautionlevel, the processes of steps S37 and S38 are skipped, and the storageprocess is brought to and end.

With the storage process terminated step S24 (FIG. 9) is reached inwhich all lamps are turned off. More specifically, the GPS lamp 33, REClamp 34 and POWER lamp 35 are switched out of their lighted or blinkingstate. In step S25, a beep sound is emitted to notify the user that thepower-off process has ended. The beep may illustratively have a melodyof “(two consecutive) bleep, bleep.”

Returning to the flowchart of FIG. 8, suppose that the check in step S2has revealed that the wake state is not in effect. In that case, step S5is reached in which a check is made to see if the sleep state isselected. If in step S5 the sleep state is judged to be selected, stepS6 is reached. In step S6, as in step S3, a check is made to see if thepower button 37 is being actuated longer than three seconds. If in stepS6 the power button 37 is judged to be actuated longer than threeseconds, step S4 is reached. Step S4 has already been discussed and willnot be described here further.

If in step S6 the power button 37 is not judged to be actuated longerthan three seconds, step S7 is reached in which a wake-up process iscarried out. FIG. 12 is a flowchart of steps detailing the wake-upprocess.

In step S51 of FIG. 12, the control unit 52 performs initializationpreparatory to starting log data storage. The initializationillustratively involves getting ready for receiving signals through theantenna 31 after leaving the sleep state in which the supply of signalsreceived via the antenna 31 was halted (i.e., supply of power to theantenna 31 was stopped).

In step S52, the POWER lamp 35 is lit green to notify the user that thewake-up state is selected. The POWER lamp 35 is illuminated (or blinks)either green or red depending on the status of the device. Likewise theGPS lamp 33 is lit (or blinks) either green or red depending on thestatus of the device. Other colors may be adopted for the illumination.In this example, the colors of green and red are assumed to be used forpurpose of illustration.

In step S53, a beep sound is emitted to notify the user that the wake-upstate is now in effect. The beep may illustratively have a melody of “(asingle) bleep”

When ready to store log data, the GPS device 1 enters the wake state foralong as a predetermined wake time in which log data may be stored. Thewake time is a period of time in which the sleep state is canceled (tocontinue the wake-up state). The user may set the sleep state for adesired period of time in a process to be described later. A defaultwake time period of, say, 10 minutes (600 seconds) may also be used ifdesired.

The storing of log data or other predetermined process is carried outuntil the wake time thus established elapses. Once the wake time haspassed, the sleep state is resumed. The sleep state is restored eitherfollowing the wake time or upon operation of the power button 37 by theuser.

In step S55, the POWER lamp 35 blinks red at intervals of four secondsand the GPS lamp 33 is turned off, notifying the user that the sleepstate is resumed (the POWER lamp keeps blinking at intervals of 4seconds as long as the sleep state is in effect). In step S56, a singlebleep sound is emitted.

In this manner, the sleep state may be interrupted for as long as neededby the user to perform the log data storage process.

Returning to the flowchart of FIG. 8, suppose that in step S5 the sleepstate is not judged to be in effect. In that case, step S8 is reached inwhich a check is made to see if the power button 37 is being actuatedlonger than three seconds. If in step S8 the powder button 37 is notjudged to be actuated longer than three seconds, the operation isregarded as an operational error and nothing in particular is carriedout in response.

If in step S8 the power button 37 is judged to be actuated longer thanthree seconds, step S9 is reached. Since the wake state is negated instep S2 and the sleep state is denied in step S5, the GPS device 1 isdeemed to be in a switched-off state. In that state, the user'sobviously intentional operation of the power button 37 is interpreted ashis or her desire to turn the device on. Thus a power-on process iscarried out in step S9.

FIG. 13 is a flowchart of steps detailing the power-on process. In stepS71 of FIG. 13, the control unit 53, given a signal from the operationunit 51, judges that the power button 37 has been operated and performsinitialization accordingly for power-up. In step S72, the POWER button37 is lit green.

In step S73, the start flag is set to 1 and the O/G flag is set to 1 or0. As discussed above, the O/G flag is set to 1 if the Tokyo geodeticsystem is in effect with the start flag at 1; the O/G flag is set to 0if the WGS84 is in effect with the start flag at 1. When the flags arethus set, step S74 is reached in which a storage process is performed.The storage process was already discussed in reference to the flowchartof FIG. 11 and thus will not be described further.

In step S75, a single bleep sound is emitted to notify the user that theGPS device 1 is now switched on. In step S76, a check is made to see ifthe sleep time is set to zero. The sleep time is a designated period oftime in which the sleep state is allowed to continue after the mostrecent storage of log data. In other words, the sleep time is aparameter that specifies when to store log data.

If the sleep time is set to zero, that means the wake state is allow tocontinue in the absence of the sleep state. If the sleep time is set toa value other than zero, then the sleep state is to continue for as longas the period of time defined by the;value, to be replaced later by thewake state. In other words, the sleep state and the wake state arealternated so that log data are stored intermittently (i.e., only ineach wake state). The wake state may continue for up to a period definedas a maximum wake time.

The sleep time and the wake time may be defined by the user as desired.By default, the sleep time is set illustratively to two minutes (120seconds) and the wake time to 10 minutes (600 seconds).

If in step S76 the sleep time is judged to be other than zero, step S77is reached in which all intermittent operation process is performed.FIG. 14 is a flowchart of steps detailing the intermittent operationprocess. In step S91 of FIG. 14, the counter unit 55 (FIG. 6) on whichto count the wake time is set to the currently established wake time.

In step S92, GPS data are acquired, generally at intervals of onesecond. If the GPS data are derived from signals currently received fromsatellites, the data are used as new data. If no signal can be receivedfrom satellites for the. movement, the most recently acquired data fromsatellites are utilized as old data. In step S93, a check is thus madeto see if the GPS data obtained in step S92 are new data (based onsignals from satellites).

If in step S93 the GPS data are not judged to be new data, step S94 isreached. In step S94, the value on the counter unit 55 is decremented byone (i.e., by 1 second). In step S95, a check is made to see if thecounter value has reached zero. In other words, it is determined whetherthe wake time has expired. If in step S95 the counter value is notjudged to be zero, step S92 is reached again and subsequent steps arerepeated. If in step S95 the counter value is judged to be zero, stepS97 is reached.

If in step S93 the GPS data are judged to be new data, step S96 isreached for a storage process. The storage process has already beendiscussed and thus will not be described here further. With the storageprocess completed, step S97 is reached in which the control unit standsby in a sleep state that may last for as long as a predetermined sleeptime. Specifically, in intermittent operation, the storage process iscarried out the moment GPS data are obtained from signals coming fromsatellites after the wake state has been brought into effect once thestorage process is performed, the sleep state is resumed immediately.Power dissipation is minimized because the sleep state is restoredimmediately after new GPS data are acquired.

If the predetermined sleep time for the sleep state is two minutes, ifthe predetermined wake time for the wake state is one minute, and if theGPS device is indoors or otherwise located not to be able to receivesignals from satellites, then log data are stored every three minutes.If the GPS device is outdoors or otherwise located to be able to receivesignals from satellites easily and if log data are stored one secondafter the wake state is selected, then the log data are storedapproximately every two minutes thereafter.

If no signal is received from satellites in the wake state (i.e., if nonew data are obtained), then the process of step S96 is never carriedout. In that case, no log data are stored.

If in step S97 the predetermined sleep time has expired in the sleepstate, step S91 is reached again. The wake state is then selected againand subsequent steps are repeated.

The steps above constituting the flowchart of FIG. 14 are carried out asan interruption when the power button 37 is operated, when the writablearea in the storage unit 52 has been exhausted, or when the supply ofpower from the power supply unit 54 (with batteries) is stopped.Suitable processes are performed depending on what has actually takenplace.

Returning to the flowchart of FIG. 13, suppose that in step S76 thesleep time is judged to be zero. In that case, step S78 is reached inwhich a continuous operation process is carried out. FIG. 15 is aflowchart of steps detailing the continuous operation process. In stepS111 of FIG. 15, the counter on which to count an interval time is setto a predetermined interval time. The interval time is used to designatethe recording density of log data and may be set to a period between onesecond and one hour. The default interval time is illustratively fiveseconds, which means log data are stored at intervals of five seconds.

The processes in steps S112 through S116 are the same as those in stepsS92 through S96 of FIG. 14 and thus will not be described further.After, the storage process of step S116 is completed, step S117 isreached in which the control unit stands by for a period defined by theremaining counter value (a state in which log data storage or otherprocess is not performed).

Illustratively, if the interval time is set for five seconds, thecontrol unit stands by for five seconds, then stores log data, thenstands by for another five seconds, and so on. When the standby state instep S117 ends, step S111 is reached again, and subsequent steps arerepeated.

Log data are recorded only when signals can be received from satellites.If no signals are received from satellites, no log data are recorded andthe standby state is selected. If the interval time is set for longerthan one minute, the standby state is replaced by the sleep mode. Thismakes it possible to minimize power dissipation in the continuousoperation process as in the case of the intermittent operation process.

As with the intermittent operation process, the above steps constitutingthe flowchart of FIG. 15 are carried out as an interruption when thepower button 37 is operated, when the writable area in the storage unit52 has been exhausted, or when the supply of power is stopped.

Below is a description of what takes place when the mark button 36 isoperated. In the storage mode with the wake state or wake-up sate ineffect, operating the mark button 36 carries out a specific process. Inthe wake or wake-up state, GPS data may or may not be acquired (i.e.,signals from satellites may or may not be received by the antenna 31).

If the mark button 36 is operated while GPS data are being acquired,position and time information in effect at the time of the buttonoperation is stored as log data. In that case, any interval time set forthe storage mode is disregarded. That is, log data are stored the momentthe mark button 36 is operated; there is no specific timing for log datato be stored. The same holds when the current GPS data cannot beacquired. With no GPS data received from satellites, however, it isimpossible to store (or generate) log data including positioninformation based on the new GPS data. In such a case, log data aregenerated in a manner including the most recent position information(old data) based on signals from satellites.

Time information is supplied by the counter unit 55. In managing its owntime, the counter unit 55 corrects the time on the basis of signalsreceived from satellites. If the mark button 36 is operated with nosignals acquired from satellites, the counter unit 55 supplies theself-managed time information to the control unit 53. In turn, thecontrol unit 53 generates log data that include the supplied timeinformation, and stores the generated log data into the storage unit 52.

As described, data to be stored by operation of the mark button 36 areaccompanied by a mark flag (set to 1) when actually recorded. If the logdata contain old data, they are stored with the O/G flag set to 1.

The storing of log data outlined above is described below in more detailwith reference to timing charts in FIGS. 16 through 18. FIG. 16 is atiming chart in effect when log data are stored in the continuousoperation process in the storage mode. The GPS device 1 is switched onby operation of the power button 37 at a given point in time. This setsthe start flag to 1 and initiates log data storage. In the continuousoperation process, log data are stored at intervals of a predeterminedinterval time.

In FIG. 16, the time interval is thus the same between P0 and P1,between P1 and P2, . . . , and between P5 and P6. The GPS lamp 33 is litgreen when signals from satellites are normally received, and glows redif the signals are not received normally. As long as the satellitesignals are normally received at each predetermined interval time (withthe GPS lamp 33 lit green), log data are stored (at P0, P1, P3, P5, P6).If the signals are not normally received (with the GPS lamp 33 glowingred), no log data are stored (at P2, P4).

When log data are normally stored, the REC lamp 34 is lit red. If no logdata are recorded, the REC lamp 34 is not illuminated. If the powerbutton 37 is operated to designate removal of power during log datastorage, log data with an end flag are stored and the log data storageprocess comes to and end. The POWER lamp 35 keeps glowing green from thetime the start flag is stored until the end flag is set.

The storing of log data by the intermittent operation process in thestorage mode will now be described with reference to the timing chart ofFIG. 17. As in the case of the continuous operation process, a startflag is set upon power-up and an end flag is set at power-off incorrespondence with the log data stored concurrently. The GPS lamp 33 islit green when the satellite signals are normally received and glows redwhen the signals are not normally received. During the intermittentoperation process, the wake state (with the POWER lamp 35 lit green) andthe sleep state (with the POWER lamp 35 blinking red) are alternated. Inthe wake state, the GPS lamp 33 glows either green or red depending onthe status of signal reception as described above. In the sleep sate,the GPS lamp 33 is turned off.

If signals are normally received from satellites in the wake state, logdata are stored (at P0, P1, P3). If the satellite signals are notnormally received in the wake state (i.e., while the wake time elapses),no log data are stored (at P2). As soon as log data are stored, thesleep state is selected. The immediate resumption of the sleep state isdesigned to minimize battery power dissipation during the intermittentoperation process.

Described below with reference to the timing chart of FIG. 18 is thestoring of log data by operation of the mark button 36 during theintermittent operation process in the storage mode. Before operating themark button 36, the user needs to check the status of the GPS device 1.More specifically, the user must check whether the GPS device 1 isswitched on and, if the device is found active, must check whether thewake state or the sleep state is in effect.

The checks above may be carried out by viewing the POWER lamp 35. If thePOWER lamp 35 is not lit, the user knows that power is still off. Inthat case, the power button 37 is operated to switch on the GPS device1. If the POWER lamp 35 is seen blinking red at intervals of fourseconds, the user recognizes the sleep state. The power button 37 isthen actuated (for less than three seconds) to bring the GPS device 1into the wake-up state.

FIG. 18 depicts the state transitions outlined above. The user'soperation of the power button 37 in the sleep state brings about thewake-up state. In the wake-up state, the GPS lamp 33 starts glowinggreen if satellite signals are being received and is lit red if thesignals are not received, as described. The user checks that the GPSlamp 33 is lit green, before operating the mark button 36. The markbutton 36 is operated by the user with his or her express intention tostore position information in effect at a particular point in time. Thusthe mark button 36 is operated in principle while the GPS lamp 33 isbeing lit green.

Operating the mark button 37 stores the position information at thatpoint in time. The timing chart of FIG. 18 indicates illustratively thatthe mark button 36 is operated while the GPS lamp 33 is glowing green.It is presumed, however, that the user can also operate the mark button36 while the GPS lamp 33 is glowing red.

In the latter case, the user presumably operates the mark button 36 inorder to mark (i.e., store) at least the current time while being awarethat position information is not obtainable because the GPS lamp 33 isglowing red. In that case, log data are stored which include, asposition information applicable to the most recent log data, the timeinformation managed by the counter unit 55 and supplemented by the oldflag (with the O/G flag set to 1). Thus the position information is notmade up of the data in effect just when the mark button 36 was operated,whereas the time information is constituted by the current time suppliedby the counter unit 55.

As described, when certain information is stored by operation of themark button 36, that information is recorded together with the mark flag(set to 1).

When the storing of log data storage is terminated by operation of themark button 36, the wake-up state remains in effect until thepredetermined wake time expires or until the user operates the powerbutton 37. In the example of FIG. 18, the user operated the power button37 before the wake time expired.

The GPS device 1 is powered by batteries (located under the battery lid40) while the above-described log data storing operation is beingperformed (i.e., when the GPS device 1 is operating alone). Thebatteries are exhausted progressively and drop eventually to a level toolow to sustain log data storage or other operation. Prior to thateventuality, the user must be warned of the reduced battery level.

The control unit 53 (FIG. 6) keeps watching the battery level. If theremaining battery time is judged to have dropped below a predeterminedlevel (e.g., 10 percent of the fully charged state), the control unit 53sounds a continuous beep sound (bleep, bleep, bleep, . . . ) and causesthe POWER lamp 35 to blink red at intervals of 0.3 seconds. The blinkingcontinues until the batteries are totally exhausted or until the userturns off power. The user may establish a desired threshold batterylevel as a criterion below which the exhausted-battery warning isissued.

The log data thus stored into the storage unit 52 are sent to thepersonal computer 4 through the USB port 42. Where the personal computer4 is connected with the GPS device 1 by means of a USB cable , the GPSdevice 1 is powered by the personal computer 4. How the GPS device 1works when connected to the personal computer 4 through the USB will nowb e described by referring to a flowchart in FIG. 19.

In step S131 of FIG. 19, the control unit 53 checks to see if a USBcable (not shown) is connected to the USB port 42. Step S131 is repeateduntil the USB cable is judged connected to the USB port 42. When thusconnected, the personal computer 4 powers the GPS device 1. In order tominimize power dissipation of the personal computer 4, the computer isarranged to power the GPS device 1 only when the latter needs to bepowered. Thus in step S132, a check is made to see if an applicationprogram requiring data from the GPS device 1 has been started up on thepersonal computer 4.

If in step S132 the relevant application program is not judged to beactivated, step S133 is reached. In step S133, a check is made to see ifthe wake state is selected (including a wake state brought about whilethe wake-up state is in effect). If in step S133 the wake state isjudged to be selected, step S135 is reached. If the wake state is notjudged to be in effect in step S133, step S134 is reached.

In step S134, a check is made to see if the GPS device 1 is in the sleepstate. If in step S134 the sleep state is judged to be in effect, stepS135 is reached. Control is passed on to step S135 in one of two ways:when the wake state was judged to be selected in step S133, or when thesleep state was judged to be in effect in step S134. This is a stagewhere the GPS device 1 is being switched on.

When the user connects the GPS device 1 to the personal computer 4, itis presumed that the GPS device 1 is to be utilized in the GPS mode orin the PC mode. This necessitates terminating the wake state or sleepstate that is a state for data storage. Thus a power-off process iscarried out in step S135. The power-off process has already beendiscussed and will not be described here further.

If in step S134 the sleep state is not judged to be in effect, i.e., ifthe GPS device 1 is judged turned off, then the processing of FIG. 19comes to an end.

If in step S132 the relevant application program is judged to be activeon the personal computer 4, step S136 is reached for a GPS mode process.FIG. 20 is a flowchart of steps detailing the GPS process.

In step S151 of FIG. 20, the GPS device 1 is initialized preparatory tostarting the GPS mode process. The initialization illustrativelyinvolves suitably setting the switches 61 and 62 (FIG. 7) and makingarrangements to receive the supply of power from the personal computer4. In step S152, GPS data start getting acquired. In step S153, theswitches 61 and 62 are operated so as to output signal informationreceived via the antenna 31 to the personal computer 4 through the USBport 42.

In step S154, a check is made to see if any data are input from thepersonal computer 4. Basically, the GPS device 1 in the GPS mode onlysupplies position and time information to the personal computer 4 andreceives no data therefrom. If in step S154 any data are judged to beoutput by the personal computer 4 to the GPS device 1, that means theuser wants to operate the GPS device 1 by means of the personal computer4. In other words, the user's desire to switch to the PC mode isrecognized. Thus if any data from the personal computer 4 are detectedin step S154, step S155 is reached.

In step S155, a check is made to see if the data from the personalcomputer 4 specify a switchover to the PC mode. If in step S155 the datafrom the personal computer 4 are not judged to be something designatinga switchover to the PC mode, then the data are regarded as irrelevant tothe GPS device 1 and step S156 is reached. Step S156 is also reachedwhen no data are judged to be admitted from the personal computer 4.

In step S156, a check is made to see if the relevant application programhas been activated. If control has been passed on to the GPS modeprocess outlined in FIG. 20 (i.e., process of step S136 in FIG. 19),that means the application program utilizing the GPS device 1 as a GPSantenna has been started up. The check in step S156 is intended to keepconstantly watching whether the relevant application program is active.

In judging that the relevant application program is off, the above checkin step S156 allows the GPS device 1 to be turned off to minimize powerdissipation since the GPS device is currently not needed. Turning offthe GPS device 1 cuts off the supply of the currently unnecessary powerfrom the personal computer 4, which translates into savings of powerresources in the computer 4.

Thus if the relevant application program is judged to be inactive instep S156, step S157 is reached in which the GPS device 1 is switchedoff. If in step S156 the application program is judged to be on, stepS152 is reached again and subsequent steps are repeated (i.e., the GPSmode is maintained).

If in step S155 the input data are judged to be those specifying aswitchover to the PC mode, step S158 is reached in which a PC modeprocess is performed. FIG. 21 is a flowchart of steps detailing the PCmode process. In step S171 of FIG. 21, a check is made to see if anydata are input from the personal computer 4. If in step S171 no data arejudged to come from the personal computer 4, step S172 is reached.

In step S172, a check is made to see if the application program relevantto the GPS device 1 has been started up on the personal computer 4. Thisprocess is the same as that in step S156 of FIG. 20 and thus will not bediscussed further. Whatever mode is currently in effect, constant checksare made on whether or not the application program relevant to the GPSdevice 1 is active so as to minimize power dissipation both in thepersonal computer 4 and in the GPS device 1.

If in step S172 the relevant application program is judged to be on,step S171 is reached again and subsequent steps are repeated (i.e., thePC mode is maintained). If the relevant application program is judged tobe off in step S172, step S157 (of FIG. 20) is reached and the GPSdevice 1 is switched off.

If in step S171 any data are judged to be input from the personalcomputer 4, a check is made to see if the input data constitute acommand designating a switchover to the GPS mode. If in step S171 thedata are judged to be the command specifying transition to the GPS mode,step S174 is reached for a GPS mode process The GPS mode process isconstitute d by the steps making the flowchart in FIG. 20. Thus fromstep S174, control is returned to step S151 (of FIG. 20) and subsequentsteps are repeated.

If in step S173 the input data are not judged to constitute a commanddesignating a switchover to the GPS mode, step S175 is reached for acommand analysis and execution process in which the command from thepersonal computer 4 is analyzed and the operation specified thereby iscarried out. FIG. 22 is a flowchart of steps detailing the process ofanalyzing and executing the command from the personal computer 4.

In step S201 of FIG. 22, a check is made to see if the command is areset command. If the command is judged to be a reset command, step S202is reached for a reset process. As described above, the GPS device 1 hasa plurality of parameters such as those defining the sleep time and waketime. These parameters may be set as desired by the user. The resetprocess, when carried out, resets the user-defined parameters to thedefault parameter values.

If in step S201 the command is not judged to be the reset command, stepS203 is reached. In step S203, a check is made to see if the command isa USB power command. If in step S203 the command is judged to be onerelated to the supply of power through the USB, step S204 is reached. Instep S204, the supply of power through the USB is turned on or off asdesignated by the command.

If in step S203 the command is not judged to be the USB power command,step S205 is reached. In step S205, a check is made to see if thecommand is an antenna power command. If in step S205 the command isjudged to be one related to the supply of power to the antenna 31, stepS206 is reached. In step S206, the supply of power to the antenna 31 isturned on or off as specified by the command.

If in step S205 the command is not judged to be the antenna powercommand, step S207 is reached. In step S207, a check is made to see ifthe command is an ID output command. If in step S207 the command isjudged to be one designating the output of a device ID, step S208 isreached in which an ID code unique to the GPS device 1 in question isoutput.

If in step S207 the command is not judged to be the ID output command,step S209 is reached. In step S209, a check is made to see if thecommand is a storage dump command. If in step S209 the command is judgedto be one designating a dump of the storage unit 52, step S210 isreached in which a dump process is started. The dump may be haltedhalfway. Thus if in step S209 the command is not judged to be thestorage dump command, step S211 is reached in which a check is made tosee if the command is a dump halt command.

If in step S211 the command is judged to be the dump halt command, stepS212 is reached for a dump halt process. If in step S211 the command isnot judged to be the dump halt command, step S213 is reached. In stepS213, a check is made to see if the command is a read command. If instep S213 the command is judged to be one designating a read operationfrom the storage unit 52, step S214 is reached. In step S214, the datadesignated by the command are read from the storage unit 52.

If in step S213 the command is not judged to be the read command, stepS215 is reached. In step S215, a check is made to see if the command isa write command. If in step S215 the command is judged to be onedesignating the writing of data to the storing unit 52, step S216 isreached. In step S216, the data designated by the command are written tothe storage unit 52.

The command analysis outlined in FIG. 22 is only an example and may bereplaced by variations embracing other commands provided to executevarieties of processes. The flowchart in FIG. 22 thus describes in anillustrative fashion how any of such commands from the,personal computer4 is typically analyzed and how a relevant process is carried out inaccordance with the result of the analysis.

The processing of FIG. 22 is performed every time a command is input. Atthe end of the processing in FIG. 22, step S171 of FIG. 21 is reachedagain and subsequent steps are repeated. Upon completion of theprocessing in FIG. 21, step S157 of FIG. 20 is reached and the GPSdevice 1 is switched off. When the processing of FIG. 20 is terminated,the processing of FIG. 19 is also brought to an end. When the GPS device1 is connected to the personal computer 4 through the USB, the steps inFIGS. 19 through 22 are carried out as described above.

In order to output a desired command illustratively in the manneroutlined in FIG. 22, the user is required to perform necessaryoperations on a screen of the display 19 of the personal computer 4.FIG. 23 shows a typical screen on which such operations are carried out.

On the display 19, a setting window 71 appears on which to operate(i.e., set) parameters for determining the way the GPS device 1 shouldoperate. The setting window 71 is made up of three major portions: anoperation setting area 72, a memory setting area 73, and a batterysetting area 74. The operation setting area 72 comprises an intervalsetting field 75 in which to set a log storage interval, and aneffective time setting field 76 in which to set an effective wake-uptime.

The memory setting area 73 is constituted by an alarm setting field anda clear button 77. The alarm setting field allows the user to set athreshold percentage of the remaining memory capacity (of the storageunit 52) as a criterion below which an alarm is issued. The clear button77 is operated to clear all stored log data. As described earlier, logdata keep being written to the storage unit 52 unless erasedintentionally by the user. To ensure a sufficient writable capacity, theuser should operate the clear button 77 periodically to clear thestorage unit 52.

The battery setting area 74 constitutes a field in which to set athreshold percentage of the remaining battery charges as a criterionbelow which an alarm is issued. Under the battery setting area 74 arethree buttons: a reset-to-default button 78-1, an OK button 78-2, and acancel button 78-3. The reset-to-default button 78-1 is operated toreset the user-established parameters to the default values. The OKbutton 78-2 is operated to confirm the end of the parameter setting. Thecancel button 78-3 is operated to cancel any parameters that have beenset so far but are considered unnecessary, or to close the settingwindow 71.

In setting parameters in various areas or fields, the user points acursor where desired on the screen by operating the mouse 16 (FIG. 2) ora similar pointing device and by clicking on or otherwise manipulatingthe device. For example, the user may point a cursor 79 to the intervalsetting field 75 by operating and clicking on the mouse 16. This causesa pull-down menu 81 to appear as shown in FIG. 24. The menu 81 indicatesvalues that may be used as an interval for log storage. A scroll barappears on the right-hand side of the pull-down menu 81, allowing theuser to display the hidden values when operated.

Illustratively, the log storage interval may be set for any one of 1second, 3 seconds, 5 seconds, 10 seconds, 30 seconds, 1 minute, 3minutes, 5 minutes 10 minutes, 30 minutes, and 60 minutes (1 hour). Thepull-down menu 81 may be arranged to contain a field in which any othertime period may be set as desired. In setting the interval, the usershould take into account the circumstances under which log data are tobe stored. For example, if log data are expected to be recorded duringwalking, the moving speed is not very high so that a relatively longinterval of, say, 10 or 30 minutes may be selected. If log data areexpected to be stored during a trip by car, the moving speed is high andthus a relatively short period of, say, 30 seconds or 1 minute should beselected to keep frequent logs.

Other parameters may also be set in like manner. Obviously, arrangementsmay be made not merely to pick one of the values contained in thepull-down menu 81 but to point the cursor 81 to the field in question sothat the currently displayed value may be directly changed as desired.

Every time the OK button 78-2 is operated, the data denoting theestablished parameter(s) are output from the personal computer 4 to theGPS device 1. In such a case, the GPS device 1 receives a write commandrequiring the old parameter value(s) to be replaced by the newlyestablished parameter(s). More specifically, in step S215 of FIG. 22,the received command is judged to be one designating a write operationto the storage unit 52. Step S215 is followed by step S216 in which theparameter value(s) is written to the storage device accordingly.

In case an error occurs for some reason during data exchanges betweenthe personal computer 4 and the GPS device 1, an error message such asis shown in FIG. 25 appears on the display 19.

The setting window 71 is not limited in design to what is shown in FIG.23; any other design may be adopted instead. A plurality of settingwindows are provided in which to operate and set up the GPS device 1.Although not shown, there is provided a window by which to dump log datafrom the storage unit 52 of the GPS device 1 to the HDD 18 (FIG. 2) ofthe personal computer 4. If that dump window is opened and operated bythe user for a dump, a data transfer indication window such as one inFIG. 26 appears on the display 19 to indicate the data transfer status.

If the user operates the cancel button in the window of FIG. 26, the GPSdevice 1 interprets the action as a dump halt command in step S211 ofFIG. 22. Step S211 is followed by step S212 in which the dump process ishalted. As a result, the data transfer indication window of FIG. 26disappears.

As described, the log data including position and time information andstored in the GPS device 1 may be supplied to the personal computer 4.On the personal computer 4, the user can edit, in conjunction with thesupplied log data, the image data captured by the digital camera 2(FIG. 1) and recorded on the floppy disk 3.

When recording image data, the digital camera 2 associates data makingup each image with a time stamp illustratively using a digital cameraformat DCF (Design rule for Camera File) defined by the JEIDA (JapanElectronic Industry Development Association). More specifically, asshown in FIG. 27, an image file accommodating an image taken by thedigital camera 2 is constituted mainly by a header and an image databody. The header stores data about the image held in the image databody. One of the data items making up the header is a time of day atwhich the image in question was captured.

Described below with reference to a flowchart of FIG. 28 is how thepersonal computer 4 operates in determining the position where aspecific image was taken by the digital camera 2. In step S231 of FIG.28, the personal computer 4 reads log data from the GPS device 1connected via the USB. The log data thus read out are placedillustratively into the RAM 13 (FIG. 2). When written to the memory, thelog data are arranged in the ascending order of chronology. Each logdata item is furnished with a counter value starting at zero. FIG. 29depicts an example of log data placed into the personal computer 4.

The log data in FIG. 29 are made up of 32 log data items. The log dataconstitute a group of data items recorded from the time the GPS device 1was turned on until it was switched off. In other words, a log datagroup starts with a log data item whose start flag is set to 1 and endswith a log data item whose end flag is at 1. Of the data itemsconstituting the log data body in FIG. 29, only those composed of a timestamp each are shown. The times are seen here taken at intervals of 30seconds from 10:18:00 to 10:33:30. The log data items, numbered withcounter values 0 through 31, are arranged chronologically on the basisof the time data held in the log data body.

In step S232, the data constituting a target image to be processed areread. The read operation is performed as follows: from that floppy disk3 in the FDD 17 (or from the portable semiconductor memory 5 or a remotesource over a network) which holds image data taken by the digitalcamera 2, image data having the data structure shown in FIG. 27 are readinto the RAM 13 or onto the HDD 18. At this point, all image data may beread from the floppy disk 3 and placed illustratively into the RAM 13before the data making up the target image is retrieved from the RAM 13.Alternatively, the image data may be read one image at a time from thefloppy disk 3.

In step S233, the counter value regarding the log data to be processedis initialized to zero. In step S234, a check is made to see if thecounter value is less than the number of all log data items plus one. Inother words, it is determined whether all log data items are subject tothe processes in step S234 and subsequent steps. In this case, thecounter value has just been set to zero and thus it is judged to be lessthan the total log data item count plus one, so that step S235 isreached.

In step S235, the “preceding” log data item is set to the counter valueand the “next” log data item is set to the counter value plus one. Thepreceding and the next log data items are chronologically adjacent toeach other (i.e., having consecutive counter values), the preceding logdata item being earlier by one time increment than the next log dataitem. In step S236, a check is made to see if the time of the precedinglog data item was earlier than the time at which the image was taken. Inother words, it is determined whether the time stamp of the precedinglog data item represents a time of day previous to the time included inthe target image data to be processed read in step S232.

If in step S236 the time stamp of the preceding log data item is judgedto be earlier than the time of the image capture, step S237 is reached.In step S237, a check is made to see if the time stamp of the next logdata item is subsequent to the time of the image capture.

If in step S237 the next log item is,not judged to be subsequent to thetime of the image capture, step S238 is reached in which the countervalue is incremented by one. Regarding the log data having the newlyestablished counter value, the processes of step S234 and subsequentsteps are repeated.

If in step S237 the time stamp of the next log data item is judged to belater than the time of the image capture, step S239 is reached. In stepS239, the position where the image was taken is estimated. How theposition of the image capture is typically estimated is described belowwith reference to FIG. 30. If the time of the image capture is, say,“10:32:40,” then the process of step S236 judges that the log data itemswith counter values 0 through 28 (from “10:18:00” to “10:32:00”) havetime stamps each preceding the time of the image capture. In step S237,the next log data item is not judged to have a time subsequent to thatof the image capture. Thus steps S234 through S238 are repeated.

When the counter value reaches 29 (i.e., when the preceding log dataitem is associated with the time stamp of “10:32:30” and the next logdata item with “10:33:00”), the process of step S236 judges the time ofthe preceding log data item to be earlier than the time of the imagecapture. In step S237, the time of the next log data item is judged tobe later than the time of the image capture. This is the state shown inFIG. 30 in which the time of the image capture is situated between twolog data items.

In this example, the time of the image capture is “10:32:40,” precededby the preceding log data item with the time of “10:32:30” and followedby the next log data item with the time of “10:33:00.” Where the two logdata items and the time of the image capture are plotted on the timebase as sketched in FIG. 30, the point indicating the time of the imagecapture is considered to divide internally a line segment connecting thetwo points representing the two log data items. If the point denotingthe time of the image capture is assumed to divide, in proportions of1:2, the distance between the two points representing the two log dataitems, then the position of the image capture can be estimated on thebasis of the position information representing the two log data items.

In the example above, the position information on the log data item withthe time of “10:32:30” is constituted by N42° 32′35″ and E135° 12′20′,whereas the position information about the log data item having the timeof “10:33:00” is made of N42° 35′35″ and E135° 00′40″. Because of theassumption that the position information spanning the two positions ofthe log data items is internally divided in proportions of 1:2, thenorth latitude (N) of the position of the image capture is estimated atN42° 33′35″. Based on the same assumption, the east longitude (E) of theposition of the image capture is estimated at E135° 0840 20″. Theestimates carried out as described above in step S239 determine theposition of the image capture corresponding to the image capture time.

There may be a case in which the time of the image capture matches thetime of a given log data item, i.e., the case where the proportions ofinternal division are 0:X (X is a value contingent on the storageinterval between log data items). In that case, the position informationabout the log data item in question is estimated to represent theposition where the target image data were acquired.

In terms of log data storage intervals, the GPS device 1 works asdescribed in one of two modes: continuous mode in which log data arestored every second, and intermittent mode in which log data arerecorded at intervals of up to 3,600 seconds (1 hour). Due to obstacles,the GPS device 1 may sometimes be unable to receive signals normallyfrom satellites (i.e., unable to store log data containing accurateposition information). If signals from satellites are not received inthe intermittent mode or because of obstacles, there are no log dataavailable containing position information corresponding to (i.e.,matching) the times of day at which image data were acquired. Sucheventualities can be overcome by estimating the position of the imagecapture in the manner described above.

When the image capture position is estimated (i.e., determined) in stepS239, step S241 is reached. In step S241, the data representing theimage capture position are associated with the target image data to beprocessed before they are all written illustratively to the HDD 18.

Suppose that in step S234 the counter value is judged to be larger thanthe total log data item count plus one, or that in step S236 the time ofthe preceding log data item is not judged to be earlier than the time ofthe image capture (since comparison with the image capture timesproceeds chronologically, the judgment that the time of the precedinglog data item was not earlier than the time of the image capturesignifies that all log data items are subsequent to the image capturetime). In such cases, step S240 is reached.

In step S240, it is judged that the position of the target image data tobe processed cannot be estimated. In step S241, the image data arestored together with a data item indicating the absence of estimatesabout the image capture position.

In the foregoing description, two log data items closest chronologicallyto the time of the image capture were shown retrieved before estimatesof an image capture position were carried out. Alternatively, there maybe provided a step in which to search for a log data item whose timematches an image capture time. Estimates of the image capture positionare performed only in the absence of any matching log data item.

The image data thus associated with specific positions of the imagecapture may be displayed as thumbnail images at the correspondingpositions on a digital map, or may be grouped into suitable zonecategories according to the position information. Such editing work iscarried out by use of an appropriate application program. If certainimage data are displayed on the digital map and if the positioninformation associated with that image has been acquired intentionallyby the user (i.e., if the position information is derived from specificlog data stored by the user's operation of the mark button 36), then anindication attesting to the user's choice may be displayed as needed.

The log data need not be limited in their use to being associated withimage data. Alternatively, the log data may be sorted outchronologically and plotted on a digital map in the sorted order. Thedata thus plotted provide a track traveled by the user.

The examples above have been shown centering on how to deal with stillpictures obtained by the digital camera 2. However, this is notlimitative If the invention. The invention also applies to movingpicture data captured by a digital video camera or like equipment. Inpracticing satellite-based position measurement, the GPS may be replacedby the GLONASS (Global Orbiting Navigation Satellite System).

The processes discussed above may be implemented either by hardware orby software. If a series of processes is implemented by software,programs constituting the software are loaded from a program storagemedium into a computer having a hardware structure dedicated to thesoftware or into a general-purpose personal computer capable ofexecuting diverse functions based on various programs that may beinstalled therein.

The program storage medium from which to load programs into the personalcomputer 4 for execution may be any one of such media as magnetic disks131 (including floppy disks), optical disks 132 (including CD-ROM(Compact Disc-Read Only Memory) and DVD (Digital Versatile Disc)), asemiconductor memory 134 or like package medium, and a hard disc driveconstituting a ROM 112 or a storage unit 118 into which programs arestored temporarily or permanently. Programs are stored onto the programstorage medium from wired or wireless communication media such as localarea networks, the Internet, or digital satellite broadcast linksthrough such interfaces as routers and modems where necessary.

In this specification, the steps in which to describe the programsoffered by the program storage medium may or may not be carried outchronologically in the described sequence. These steps include processesthat may be executed in parallel or on an individual basis.

In this specification, the term “system” refers to a totality ofmultiple devices configured.

As described above and through the information processing apparatus, theinformation processing method, and the program storage medium accordingto the present invention, time data are generated to denote times of dayat which measured position data are generated. Log data are thengenerated including at least the measured position data and the timedata. With the log data placed in storage, either the measured positiondata and time data are all output, or the log data are retrieved fromstorage for output. These features help enhance the versatility of theinventive information processing apparatus for obtaining measuredposition data.

As many apparently different embodiments of this invention may be madewithout departing from the spirit and scope thereof, it is to beunderstood that the invention is not limited to the specific embodimentsthereof except as defined in the appended claims.

What is claimed is:
 1. An information processing apparatus comprising: position measuring means for measuring positions and for outputting position data based on the measured positions; time generating means for generating time data representing times of day at which the positions are measured by said position measuring means; storing means for storing position and time data output from said position measuring means and output from said time generating means, the position and time data having an associative relation established therebetween; outputting means for outputting the stored position and time data from said storing means to a controller; and an image capturing means for capturing a digital image and for outputting the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 2. An information processing apparatus according to claim 1, wherein said position measuring means and said time generating means receive signals from satellites in measuring the positions and in generating the time data respectively.
 3. An information processing apparatus according to claim 1, further comprising power supplying means for supplying battery-fed power to said position measuring means, said time generating means, said storing means and said outputting means.
 4. An information processing method comprising the steps of: measuring positions and outputting position data based on the measured positions; generating time data representing times of day at which the positions are measured in said position measuring step; storing position and time data measured in said position measuring step and generated in said time generating step, the position and time data having an associative relation established therebetween; outputting the stored position and time data to a controller; and capturing a digital image and outputting the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 5. An information processing method according to claim 4, wherein said position measuring step and said time generating step include receiving signals from satellites in measuring the positions and in generating the time data respectively.
 6. An information processing method comprising the steps of: outputting, to a controller, position data representing measured positions and time data representing times of day at which the position data are obtained, said position data and said time data having been stored with an associative relation established therebetween; and capturing a digital image and outputting the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 7. An information processing method according to claim 6, wherein said position measuring step and said time generating step include receiving signals from satellites in measuring the positions and in generating the time data respectively.
 8. A program storage medium which stores a program for causing an information processing apparatus to execute the steps of: measuring positions and outputting position data based on the measured positions; generating time data representing times of day at which the positions are measured in said position measuring step; storing position and time data measured in said position measuring step and generated in said time generating step, the position and time data having an associative relation established therebetween; and outputting the stored position and time data to a controller; capturing a digital image and outputting the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 9. A program storage medium which stores a program for causing an information processing apparatus to execute the steps of: outputting, to a controller, position data representing measured positions and time data representing times of day at which the position data are obtained, said position data and said time data having been stored with an associative relation established therebetween; and capturing a digital image and outputting the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 10. An information processing apparatus comprising: a position measuring device configured to measure positions and to output position data based on the measured positions; a time generator configured to generate time data representing times of day at which the positions are measured by said position measuring device; a memory configured to store position and time data output from said position measuring device and output from said time generator, the position and time data having an associative relation established therebetween; an output configured to output the stored position and time data from said memory to a controller; and an image capturing device configured to capture a digital image and to output the captured digital image to the controller; the controller utilizing the position and time data to determine where the digital image was captured.
 11. An information processing apparatus according to claim 10, wherein said position measuring device and said time generator receive signals from satellites in measuring the positions and in generating the time data respectively.
 12. An information processing apparatus according to claim 10, further comprising a power supply configured to supply battery-fed power to said position measuring device, said time generator, said memory and said output. 